home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 16
/
Aminet 16 (1996)(GTI - Schatztruhe)[!][Dec 1996].iso
/
Aminet
/
comm
/
net
/
AmiTrack1_21.lha
/
AmiTrack
/
AmiTrack.readme
< prev
next >
Wrap
Text File
|
1996-10-26
|
13KB
|
330 lines
Short: AmiTCP on-line Amiga registry system
Type: comm/net
Author: jfriesne@ucsd.edu (Jeremy Friesner)
Uploader: jfriesne@ucsd.edu (Jeremy Friesner)
Requires: Workbench 2.04+, AmiTCP3.0b+
Replaces: comm/tcp/AmiTrack1.2
Version: 1.21
----------------------------------------------------------------
AMITRACK V1.21
(Released 10/24/96)
----------------------------------------------------------------
INTRODUCTION
------------
What is AmiTrack? Hmm, good question.
I was talking to an AmiPhone user a few weeks ago, and
he was lamenting that it was hard to find another AmiPhone
user who was online to talk to. We decided what was needed
was a way to find out who else is available, sort of an
"Active Amiga registry".
So that's what AmiTrack does. AmiTrack is an AmiTCP program
that acts as the keeper of a list of Amigas that are currently
on-line. It isn't limited to just AmiPhone users, either; you
can register your Amiga to advertise any message string you want.
This archive contains two executables: AmiTrack and AmiTrackServer.
AmiTrack is a client that you can use to notify the world of your
Amiga's presence on the internet, and AmiTrackServer is useful if
you wish to let people use your Amiga as a registry site. AmiTrackServer
must be launched from the CLI, but AmiTrack may be launched from
either the CLI or by clicking its icon.
INSTALLATION
------------
There isn't any, really. Just copy the executable files and icons
to wherever you want to keep them. With the ToolTypes DONOTWAIT and
CX_POPUP=NO set, AmiTrack can go into your WBStartup directory.
AMITRACK
--------
The AmiTrack program is designed to connect to an Amiga running
the AmiTrackServer program. While connected, it periodically
does two things: it sends "ping" packets to the AmiTrackServer
to let it know that you're still there, and it downloads the
list of currently registered Amigas on that server, for your
viewing pleasure. When you quit AmiTrack, you will be removed
from the server's list of Amigas.
AmiTrack understands the following parameters. These parameters
may be set either as ToolTypes in AmiTrack's icon, or specified
on the command line (in the same exact format as the tooltypes,
although you may have to use "quote marks" if the parameter
contains spaces):
SERVER/K:
The Internet host name of the Amiga that is running AmiTrackServer,
that you wish to register with. This defaults to isys.ml.org.
PORT/K/N:
The port number on the server which you wish to connect to.
This defaults to port 18945 (which by a bizarre coincidence,
is also the default port for AmiTrackServer to accept connections
on)
COMMENT/K:
The comment string you wish to have associated with your Amiga.
This defaults to no comment.
PINGDELAY/K/N:
Sets the number of minutes to delay between pinging the AmiTrack
server. Defaults to 1. Setting this to values greater than 4
are not recommended, as the AmiTrack server will drop you from
its listing if it hasn't heard from you in 5 minutes or so.
If set to zero, automatic pinging will be disabled.
REFRESHDELAY/K/N:
Sets the number of minutes to delay between refreshing your
list of clients who are logged in to the AmiTrack server.
If set to zero, automatic list refreshing will be disabled.
ENABLED/K:
If set to NO, AmiTrack will open in "disabled" mode. In this
mode, AmiTrack will not register itself with the AmiTrack
server. It will still periodically download the list of
other clients, however. Thus, you can "lurk" by specifying
this option.
CX_POPUP/K:
If set to NO, AmiTrack will not open its window on startup.
CX_PRIORITY/K/N:
Sets the Commodities priority of the AmiTrack commodity.
CX_POPKEY/K:
Sets a hotkey that will cause AmiTrack to open its window.
Defaults to "lcommand shift a".
Valid AmiTrack CLI invocations could be:
AmiTrack
AmiTrack "COMMENT=I'm online!"
AmiTrack SERVER=your.mother.com PORT=5217 CX_POPUP=NO "COMMENT=My comment"
AmiTrack "COMMENT=Hi there" "CX_POPKEY=shift help" ENABLED=NO
AMITRACK GUI
------------
AmiTrack's GUI is fairly straightforward. It consists of several
string gadgets, two buttons, and a ListView. The Server, Port, and
Comment string gadgets are self-explanatory (I hope!). The ListView
shows the IP addresses and comment strings of everyone logged in
to the server you are connected to. This list may be updated by
clicking on the "Refresh" button, and will also be updated automatically
every few minutes when the window is open, as indicated by the
associated integer text gadget. The "Ping" button causes your client to
send a packet to the AmiTrackServer, in effect saying "I'm here!".
If the AmiTrackServer does not hear from your client for about five
minutes straight, it will assume that you are no longer available
and remove you from its list. Hence, it is probably a bad idea
AmiTrack's ping interval to more than about four minutes.
Automatic refreshes and pings can be disabled by setting their
interval gadget to zero.
AmiTrack can be hidden via the Project menu. Its window can be
reopened via its hotkey (see the CX_POPKEY argument above) or
by clicking the "Show" button in the Commodities Exchange program.
The "Enabled" option in the Project menu controls whether or
not you wish to be visible on the AmiTrackServer's registry.
You can also use the Enable/Disable buttons in the Commodities
Exchange program is to control this.
AMITRACKSERVER
--------------
The AmiTrackServer executable is designed to accept AmiTrack
client connections from all over the Internet and dole out
information about who else has connected to it recently. Most
people won't need this program, but it's there anyway for those
who would like to run their own server. AmiTrackServer has no
GUI, rather it sends only output to the CLI. It will display
its list of registered Amigas to the CLI at regular intervals,
and whenever the list is modified. The list displays the IP
name of each Amiga, its comment string, and the number of seconds
that have elapsed since the last "ping" was heard from that
Amiga.
AmiTrackServer takes one optional command line argument, the
port number upon which it is to accept connections. This number
defaults to 18945.
AmiTrackServer will quit if sent a CTRL-C signal, and will
refresh its CLI output of its list if sent a CTRL-D.
TECHNICAL
---------
AmiTrack tries to be as reliable and efficient as possible.
The AmiTrack server keeps a linked list of the currently
registered Amiga hostnames and their comment strings, as
well as a timestamp of last time those Amigas were heard from.
If an AmiTrack client has not sent a packet to the server
for a specified amount of time (currently five minutes),
it is liable to be removed from the registered list. This
way, even if the client crashed and didn't send a disconnect
packet, its entry won't hang around forever. To retrieve
the list of clients, AmiTrack opens a TCP connection to
the AmiTrack server, which immediately spits out a list of
IP numbers, names, and comment strings, and then closes the
connection.
AmiTrack is written in DICE C, but there shouldn't be anything
too compiler-dependent in it.
MANIFEST
--------
The following files should be in the AmiTrack archive:
Listing of archive 'AmiTrack.lha':
Original Packed Ratio Date Time Name
-------- ------- ----- --------- -------- -------------
628 274 56.3% 24-Oct-96 01:32:12 AmiTrack.info
23680 12792 45.9% 24-Oct-96 01:32:12 +AmiTrack
660 358 45.7% 24-Oct-96 01:32:12 +AmiTrack.info
13071 5505 57.8% 24-Oct-96 01:32:12 +AmiTrack.readme
840 295 64.8% 24-Oct-96 01:32:12 +AmiTrack.readme.info
12288 7475 39.1% 24-Oct-96 01:32:12 +AmiTrackServer
450 267 40.6% 24-Oct-96 01:32:12 +AmiTrackServer.info
628 274 56.3% 24-Oct-96 01:32:10 +source.info
40361 11919 70.4% 24-Oct-96 01:32:12 +amitrack.c
5992 2139 64.3% 24-Oct-96 01:32:10 +amitrackserver.c
15097 4871 67.7% 24-Oct-96 01:32:12 +AmiTrackShared.c
4485 1682 62.4% 24-Oct-96 01:32:12 +amitrackshared.h
1466 360 75.4% 24-Oct-96 01:32:12 +dmakefile
-------- ------- ----- --------- --------
119646 48211 59.7% 24-Oct-96 01:32:22 13 files
AUTHOR
------
This program was written by Jeremy Friesner, using DICE C.
My email address is jfriesne@ucsd.edu. (Try jaf@chem.ucsd.edu if
that one doesn't work, though)
ACKNOWLEDGEMENTS
----------------
Thanks to Oliver Hotz for providing a full-time AmiTrack server site.
Thanks to AndyS and Gallant on #amiga for helping me debug & test.
And finally, thanks to the guy who emailed me suggesting most of
the new features for v1.2--unfortunately, my email file got wiped
and I can't remember your name or address! :(
DISTRIBUTION
------------
AmiTrack is fully in the public domain. Do whatever you want with it.
BUGS
----
- Sometimes after you exit the server, it can't be run again
for a minute or so afterwards (it will error out, saying the
TCP port is in use). This usually happens if GetTrackList has
been run on this server recently. I think this is a "feature"
of BSD-based TCP software, though, as I've seen the same
thing happen on UNIX machines running other software.
- There ought to be a mechanism to ensure that you can't set the
ping interval to be greater than the server's timeout interval.
- AmiTrack exits when AmiTCP quits (because AmiTCP sends it a CTRL-C).
Perhaps it should still hang around afterwards, in case AmiTCP is
started again?
TODO
----
- Make a UNIX version of the server, and perhaps the client
as well.
- Add a way to automatically launch your favorite net program
with a given hostname from the list as an argument.
OTHER STUFF
-----------
Some other programs I wrote: (try them, they're cool! ;))
GadMget - Loads in an Aminet RECENT or INDEX file and lets you choose
files to download via a pair of ListViews. Features keyword
searching and sorting by name, size, age, directory, and
description. When you're done, it outputs the ftp commands
that are needed to download the selected files. The output
formatting is extremely flexible, allowing generation of
many formats: ftp, ncftp, ftp-by-mail, shell scripts, etc.
Comes with an ARexx script to completely automate downloading
with ncFTP. (util/misc/GadMget2.05.lha,93K)
AmiSlate - A paint program that works with AmiTCP to allow two people
to cooperatively paint on the same drawing from different
computers. Features an extensive ARexx port which allows
the construction of new features and games. Comes with
ARexx scripts for chess, tic-tac-toe, backgammon, and others.
(comm/tcp/AmiSlate1.4.lha,115K)
AmiPhone - An Internet voice-chat program, similar to IPhone and
VoiceChat and Nevot and all that, only Amiga-specific.
Features aflexible buffering mechanism for slow connections,
an ARexx port, IFF 8SVX transmission and playback, internal
multitasking, and support for a variety of digitizers.
(comm/net/AmiPhone1.92.lha,142K)
HISTORY
-------
1.21 : (Public Release 10/22/96)
* Oops, a stupid bug crept in that broke the automatic
pinging and updating. Sorry about that!
* Changed key-shortcut for the "About" box to lcommand-?
- Added a time display to the "logins refreshed" message.
- Window now retains the previous title bar message after
being closed and reopened.
1.2 : (Public Release 10/22/96)
- AmiTrack is now a commodity.
- All the startup arguments have been changed, and new ones have
been added.
- Removed the iconify feature--use "Hide" and Commodities instead.
- AmiTrack can now be started from the Workbench, and parses ToolTypes.
- AmiTrack no longer requires AmiTCP to be running when AmiTrack
is launched. If AmiTrack is launched and AmiTCP is not running,
then AmiTrack will just wait around quietly until AmiTCP is started.
This allows AmiTrack to be placed in your WBStartup directory!
- Added the "Enable" item to the Project menu.
- Made isys.ml.org the default server
- Made absolutely no changes to the AmiTrackServer code.
1.11 : (Private Release 10/13/96)
- Added iconify-on-startup.
1.1 : (Public Release 6/28/96)
- Separated the AmiTrack server and client into two separate
programs, and integrated GetTrackList into the client.
- Added a nice GUI to the client program.
- The AmiTrack protocol has changed slightly--v1.1 is not quite
compatible with v1.0. Sorry! :(
1.0 : (Public Release 6/7/96)
- Initial release. Works well for me, but untested in "real life".